/**
 * Copyright 2021 Rafael Fernández López <ereslibre@ereslibre.es>
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 **/

package v1alpha1

// Code auto-generated. DO NOT EDIT.

const (
	// NodeJoinRequestOpenAPISchema represents the OpenAPI schema for kind NodeJoinRequest
	NodeJoinRequestOpenAPISchema = `description: NodeJoinRequest is the Schema for the nodejoinrequests API
properties:
  apiVersion:
    description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
    type: string
  kind:
    description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
    type: string
  metadata:
    type: object
  spec:
    description: NodeJoinRequestSpec defines the desired state of NodeJoinRequest
    properties:
      apiServerEndpoint:
        description: The API Server endpoint for what this join request is for. The generated kubeconfig file for the kubelet will point to this endpoint. If not provided, the default cluster API endpoint will be used.
        type: string
      containerRuntimeEndpoint:
        description: The local node container runtime endpoint. (e.g. unix:///run/containerd/containerd.sock)
        type: string
      extraSANs:
        description: A list of extra Subject Alternative Names (SAN's) that will be included in the Kubelet server certificate issued by oneinfra.
        items:
          type: string
        type: array
      imageServiceEndpoint:
        description: The local node image service endpoint. It's usually the same as the container runtime endpoint. (e.g. unix:///run/containerd/containerd.sock)
        type: string
      symmetricKey:
        description: Base64 encoded symmetric key, used by ` + "`" + `oneinfra` + "`" + ` management cluster to cipher joining information. This key must be ciphered with the join public key of the cluster to be joined, and encoded in base64. The public join key of every managed cluster can be found on the ` + "`" + `oneinfra-join` + "`" + ` ConfigMap present in the ` + "`" + `oneinfra-system` + "`" + ` namespace.
        type: string
    type: object
  status:
    description: NodeJoinRequestStatus defines the observed state of NodeJoinRequest
    properties:
      conditions:
        description: Conditions contains a list of conditions for this request. ` + "`" + `oneinfra` + "`" + ` will set the ` + "`" + `Issued` + "`" + ` condition to ` + "`" + `True` + "`" + ` when this request has all the information set, and available in this ` + "`" + `Status` + "`" + ` object.
        items:
          description: Condition represents a condition
          properties:
            lastSetTime:
              format: date-time
              type: string
            lastTransitionTime:
              format: date-time
              type: string
            message:
              type: string
            reason:
              type: string
            status:
              description: ConditionStatus represents a condition status
              type: string
            type:
              description: ConditionType represents a condition type
              type: string
          type: object
        type: array
      kubeConfig:
        description: KubeConfig has the kubeconfig contents that the kubelet should use. Filled by ` + "`" + `oneinfra` + "`" + `, and ciphered using the provided SymmetricKey in the request spec. Base64 encoded.
        type: string
      kubeletClientCACertificate:
        description: KubeletClientCACertificate contains the contents of the Kubelet client CA certificate to be used. Filled by ` + "`" + `oneinfra` + "`" + `, and ciphered using the provided SymmetricKey in the request spec. Base64 encoded.
        type: string
      kubeletConfig:
        description: KubeletConfig has the kubelet configuration contents that the kubelet should use. Filled by ` + "`" + `oneinfra` + "`" + `, and ciphered using the provided SymmetricKey in the request spec. Base64 encoded.
        type: string
      kubeletServerCertificate:
        description: KubeletServerCertificate contains the contents of the Kubelet server certificate to be used. Filled by ` + "`" + `oneinfra` + "`" + `, and ciphered using the provided SymmetricKey in the request spec. Base64 encoded.
        type: string
      kubeletServerPrivateKey:
        description: KubeletServerPrivateKey contains the contents of the Kubelet server private key to be used. Filled by ` + "`" + `oneinfra` + "`" + `, and ciphered using the provided SymmetricKey in the request spec. Base64 encoded.
        type: string
      kubernetesVersion:
        description: KubernetesVersion contains the Kubernetes version of the cluster this node is joining to. Filled by ` + "`" + `oneinfra` + "`" + `, and ciphered using the provided SymmetricKey in the request spec. Base64 encoded.
        type: string
      vpn:
        description: VPN contains the VPN information for this node join request. Nil if VPN is disabled. Filled by ` + "`" + `oneinfra` + "`" + `.
        properties:
          CIDR:
            description: CIDR for this cluster. Filled by ` + "`" + `oneinfra` + "`" + `, and ciphered using the provided SymmetricKey in the request spec. Base64 encoded.
            type: string
          address:
            description: Address contains the VPN address of this node. Filled by ` + "`" + `oneinfra` + "`" + `, and ciphered using the provided SymmetricKey in the request spec. Base64 encoded.
            type: string
          endpoint:
            description: Endpoint contains the VPN endpoint this peer should connect to. Filled by ` + "`" + `oneinfra` + "`" + `, and ciphered using the provided SymmetricKey in the request spec. Base64 encoded.
            type: string
          endpointPublicKey:
            description: EndpointPublicKey contains the VPN endpoint public key. Filled by ` + "`" + `oneinfra` + "`" + `, and ciphered using the provided SymmetricKey in the request spec. Base64 encoded.
            type: string
          peerPrivateKey:
            description: PeerPrivateKey contains the VPN peer private key. Filled by ` + "`" + `oneinfra` + "`" + `, and ciphered using the provided SymmetricKey in the request spec. Base64 encoded.
            type: string
        type: object
    type: object
type: object
`
)
